package com.dmw.config;


import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.annotations.servers.Server;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Contact;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@OpenAPIDefinition(
        servers = {
                @Server(description = "开发环境服务器", url = "http://localhost:8080"),
                @Server(description = "测试环境服务器", url = "")
        }
)
@Configuration
public class SpringDocConfig {

    @Bean
    public OpenAPI openAPI() {
        return new OpenAPI()
                // 配置接口文档基本信息
                .info(this.getApiInfo()
                );
    }

    private Info getApiInfo() {
        return new Info()
                // 配置文档标题
                .title("Swagger3")
                // 配置文档描述
                .description("SpringBoot3集成Swagger3文档")
                // 配置作者信息
                .contact(new Contact().name("程序员dmw").url("https://www.2025521.xyz").email("3129536285@qq.com"))
                // 配置License许可证信息
                .license(new License().name("Apache 2.0").url("https://www.2025521.xyz"))
                // 概述信息
                .summary("SpringBoot3集成Swagger3文档")
                .termsOfService("https://www.2025521.xyz")
                // 配置版本号
                .version("0.1");
    }
}